TURNO ROTATORIO


Un modo sencillo de reducir la penalización que sufren los trabajos cortos con FCFS es considerar la apropiación dependiente de un reloj. La más simple de estas políticas se denomina planificación por turno rotatorio (RR. Round Robin). Periódicamente se genera una interrupción de reloj. Cuando se genera la interrupción el proceso que esta en ejecución se sitúa en la cola de listos y se selecciona el siguiente trabajo según un FCFS. Esta técnica se conoce también como fracciones de tiempo puesto que cada proceso recibe una fracción de tiempo antes de ser expulsado.
Con esta politica del turno rotatorio la cuestión principal de diseño es la longitud del cuanto de tiempo o fracción que se va a usar. Si el cuanto es muy pequeño los procesos cortos pasan por el sistema rápidamente. Por otro lado se produce una sobrecarga en la gestión de las interrupciones del reloj y en la ejecución de las funciones de planificación y expedición. Por lo tanto se deben evitar los cuantos pequeños. Una referencia útil consiste en que el cuanto debe ser ligeramente mayor que el tiempo necesario para una interacción. Si es menor la mayoría de los procesos necesitaran al menos dos cuantos.
El turno rotatorio es particularmente efectivo en sistemas de carácter general y de tiempo compartido o de procesos de transacciones. Una desventaja del turno rotatorio es el tratamiento que hace de los procesos con carga de procesador y con carga de E/S. Generalmente un proceso con carga de E/S tiene ráfagas de procesador (cantidad de tiempo consumido ejecutando entre dos operaciones de E/S) mas cortas que un proceso con carga de procesador. Si hay una mezcla de procesos con carga de procesador y con carga de E/S, ocurrirá lo siguiente: un proceso con carga de E/S utiliza el procesador durante un periodo corto y después se bloquea en la E/S; espera a que se complete la operación de E/S y entonces vuelve a la cola de Listos. Por otro lado, un proceso con carga de procesador generalmente hace uso de un cuanto de tiempo completo cuando se ejecuta e inmediatamente retorna a la cola de listos. Asi pues, los procesos con carga procesador tienden a recibir una porción desigual de tiempo de procesador, lo que origina un rendimiento pobre de los procesos con carga de E/S un mal aprovechamiento de los dispositivos de E/S y un incremento de la variabilidad del tiempo de respuesta.
El turno rotatorio virtual (VRR, virtual Round Robin) y que evita esta desigualdad.

En el esquema se muestra los nuevos procesos llegados que se unen a la cola de listos que se gestiona según un FCFS. Cuando un proceso termina su cuanto de ejecución, vuelve a la cola de listos. Cuando un proceso se bloquea por una E/S, se añade a la cola de entrada salida. Hasta ahora, el tratamiento es normal, la nueva característica consiste en una cola FCFS auxiliar a la que se desplazan los procesos una vez que son liberados de la espera por la E/S. Al tomar una decisión sobre el siguiente proceso a expedir, los procesos de la cola auxiliar tienen preferencia sobre los de la cola principal de Listos. Cuando se expira un proceso desde la cola auxiliar, no se puede ejecutar más que un tiempo igual al cuanto básico menos el tiempo total de ejecución consumido desde que fue seleccionado por última vez en la cola de listo. Algunos estudios de rendimientos realizados demuestran que este método es superior al turno rotatorio en lo que se refiere a equidad.